<html>
<body>

Example demonstrating how the Java compiler enforces Liskov Substitution Principle (LSP). 
There is no executable in this example - the point is to demonstrate that the compiler allows overriding a method with a method that has stronger post-conditions. 
In this case, the overriding method increases the visibility (from package private to public).
This can be seen as weakening the precondition: the caller does not have to be within the same package. 

<p/>
&copy; Jens Dietrich, 2013

</body>
</html>